Sortiranje Okretanjem

време меморија улаз излаз
1 s 1000 Mb стандардни излаз стандардни улаз

Dat je niz celih brojeva A. Potrebno je sortirati niz A u neopadajuci poredak koristeci sledecu operaciju: za data dva indeksa (i, j), okreni deo niza A[i], A[i+1], ..., A[j].

Sto znaci da ako na niz A[1], A[2], ..., A[i], A[i+1], ..., A[j-1], A[j], ..., A[N], primenimo ovu operaciju sa indeksima (i, j), dobijamo niz A[1], A[2], ..., A[i-1], A[j], A[j-1], ..., A[i+1], A[i], A[j+1], ..., A[N].

Ova operacija kosta j - i + 1. Cena programa je zbir cena operacija koje program koristi. Napisati program cija je cena manja od 2 000 000.

Prvi red standardnog ulaza sadrzi prirodan broj N (1 <= N <= 10 000) koji predstavlja broj elemenata niza. Naredni red sadrzi N prirodnih brojeva, razdvojenih jednim znakom razmaka, koji predstavljaju elemente niza. (-10^9 <= A[i] <= 10^9)

U prvom redu standardnog izlaza ispisati broj operacija koji vas program koristi, a zatim u svakog sledem redu redom ispisati operacije koje vas program koristi.

Улаз Излаз

5
1 -1 50 92 -55

4
1 5
2 4
3 5
4 5

Pogledajmo kako niz izgleda nakon svake operacije:
1 5    ->   -55 92 50 -1 1
2 4    ->   -55 -1 50 92 1
3 5    ->   -55 -1 1 92 50
4 5    ->   -55 -1 1 50 92

Ukupna cena ovog programa je 5 + 3 + 3 + 2 = 13

Морате бити улоговани како бисте послали задатак на евалуацију.